Non-Volatile Memory Which Can Increase the Operation Window

ABSTRACT

A non-volatile memory cell includes a plurality of rows of memory cells, a plurality of bit lines coupled to the plurality of rows of memory cells for accessing data to the plurality of rows of memory cells, a plurality of word lines each coupled to a corresponding row of memory cells, and a decoder coupled to the plurality of word lines for enabling at least one row of memory cells of the plurality of rows of memory cells.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention illustrates non-volatile memory (NVM), and more particularly, non-volatile memory using a multi-cells selection method to increase the operation window.

2. Description of the Prior Art

Memory is widely used in various electronic devices for data storage in recent years. Like memory cards in digital cameras, random access memory (RAM) and flash memory in computers, memory is manufactured in the form of an integrated circuit for electronic applications. Generally, memory can be classified into two types, named volatile memory (VM) and non-volatile memory (NVM). As it is well known in the art, non-volatile memory has an electronic property that data stored in the non-volatile memory will not volatilize after power is turned off. This electronic property makes non-volatile memory receive more attention in the use of hard disk (HD) drives, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), and flash memory.

As aforementioned, non-volatile memory is manufactured as an integrated circuit, where the circuit includes a plurality of bit lines, a plurality of word lines, and a plurality of memory cells. Specifically, the plurality of bit lines are coupled to the plurality of rows of memory cells. The plurality of word lines each coupled to a corresponding row of memory cells. When the word line enables the corresponding row of memory cells, the data can be accessed (erased/written) to the corresponding row of memory cells through the bit line. With enabling the memory cells row by row, data can be sequentially accessed to all the memory cells.

Please refer to FIG. 1. FIG. 1 illustrates the layout structure of a conventional non-volatile memory. In FIG. 1, each word line controls the floating gates of a corresponding row of memory cells. For example, the word line WL₁ controls the first row of floating gates FG1 ₁ to FG1 ₅ with respect to the first row of memory cells. The word line WL₂ controls the second row of floating gates FG2 ₁ to FG2 ₅ with respect to the second row of memory cells. The word line WL₃ controls the third row of floating gates FG3 ₁ to FG3 ₅ with respect to the third row of memory cells. The word line WL₄ controls the fourth row of floating gates FG4 ₁ to FG4 ₅ with respect to the fourth row of memory cells. Since the floating gate controls the input current of the corresponding memory cell, the word lines WL₁ to WL₄ respectively control the first to the fourth row of memory cells for accessing data by operating on the corresponding floating gates.

Particularly, in conventional non-volatile memory, since the input current for accessing data in each memory cell is small, as time passes by, the voltage offset (i.e., the offset of threshold voltage in each memory cell for data accessing) increases and results in narrowing the operation window of memory, lowering endurance of memory.

Please refer to FIG. 2. FIG. 2 depicts the current distribution of the conventional non-volatile memory in one operation instance. The Y-axis (vertical axis) denotes the number of memory cell and the X-axis (horizontal axis) denotes the un-normalized current intensity of each memory cell. In FIG. 2, the current distribution is presented as a line with circular markers. Specifically, the current distribution has two peak regions P1 and P2. Each peak region locates the local maximum of the distribution curve. The first peak region P1 denotes the number of memory cell used for accessing the low voltage data. The second peak region P2 denotes the number of memory cell used for accessing the high voltage data. The difference of the current of the memory cell between a first value within the first peak region P1 (i.e., within the current intensity interval 1 to 6 in X-axis) and a second value within the second peak region P2 (i.e., within the current intensity interval 26 to 31 in X-axis) is defined as the operation window. In FIG. 2, the first value is chosen to be about 4. The second value is chosen to be about 30. Apparently, Since the word lines enables the conventional non-volatile memory cells row by row, the operation window in FIG. 1 has a narrow width and thus results in low tolerance of the voltage offset through the use of time, leading to low endurance of the non-volatile memory.

To improve the endurance of memory, a prior art method has been developed. The main idea is to use a metal jumper to connect the ends of some of the bit lines together, causing the connection of bit lines to be fixed.

SUMMARY OF THE INVENTION

According to the claimed invention, the non-volatile memory includes a plurality of rows of memory cells, a plurality of bit lines coupled to the plurality of rows of memory cells for accessing data to the plurality of rows of memory cells, a plurality of word lines each coupled to a corresponding row of memory cells, and a decoder coupled to the plurality of word lines for enabling at least one row of memory cells of the plurality of rows of memory cells.

According to the claimed invention, one method for controlling the non-volatile memory includes: enabling a first word line of the plurality of word lines according to an optional signal and at least one decoded address signal, and accessing data to a row of memory cells coupled to the first word line through the bit lines while the first word line is enabled.

According to the claimed invention, another method for controlling a non-volatile memory includes: enabling the plurality of word lines when an optional signal has a predetermined logic value, and accessing data to the plurality of rows of memory cells coupled to the plurality of word lines through the bit lines while the plurality of word lines are enabled.

These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment that is illustrated in the various figures and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic layout structure of the conventional non-volatile memory.

FIG. 2 is current distribution of the conventional non-volatile memory in one operation instance.

FIG. 3 is a schematic circuit structure of non-volatile memory according to an embodiment of the present invention.

FIG. 4 is a schematic layout structure of the non-volatile memory according to an embodiment of the present invention.

FIG. 5 is a logic circuit for the decoder of the first embodiment in the present invention.

FIG. 6 is a logic circuit for the decoder of the second embodiment in the present invention.

FIG. 7 is current distribution of the non-volatile memory according to an embodiment of the present invention in one operation instance.

DETAILED DESCRIPTION

Please refer to FIG. 3. FIG. 3 is the schematic circuit structure of non-volatile memory according to an embodiment of the present invention. As shown in FIG. 3, the non-volatile memory 200 includes a plurality of memory cells 10, a plurality of bit lines BL₁ to BL_(M) coupled to the plurality of memory cells for accessing data to the plurality of memory cells 10, a plurality of word lines WL1 ₁ to WL1 _(P(1)), WL2 ₁ to WL2 _(P(2)), . . . , WLN₁ to WLN_(P(N)) each coupled to a corresponding row of memory cells, and a plurality of decoders D₁ to D_(N) each coupled to a plurality of word lines to enable at least one row of memory cells of a plurality of rows of memory cells according to the control signals. Here, M and N are positive integers. P(x) is a function of x where P(x) can be a positive integer or equal to 2^(n). In FIG. 3, the first decoder D₁ is coupled to P(1) word lines including word lines WL1 ₁ to WL1 _(P(1)). The second decoder D₂ is coupled to P(2) word lines including word lines WL2 ₁ to WL2 _(P(2)). The Nth decoder D_(N) is coupled to P(N) word lines including word lines WLN₁ to WLN_(P(N)). The positive values P(1), P(2), . . . , and P(N) can be identical or different. For convenience, we group the memory cells 10 into memory banks MB₁ to MB_(N) in the non-volatile memory 200. As shown in FIG. 3, each memory bank includes a plurality of rows of memory cells with respect to the corresponding decoder. For example, the first memory bank MB₁ contains P(1) rows of memory cells with respect to the first decoder D₁. The second memory bank MB₂ contains P(2) rows of memory cells with respect to the second decoder D₂. The Nth memory bank MB_(N) contains P(N) rows of memory cells with respect to the Nth decoder D_(N).

In the following, two operation modes of the decoder are introduced in the embodiments. The first operation mode indicates that all the word lines are enabled simultaneously. The second operation mode indicates that the word lines are enabled line-by-line. Please refer to FIG. 4. FIG. 4 illustrates the layout structure of the non-volatile memory in a memory bank according to an embodiment of the present invention. In FIG. 4, each word line controls the floating gates of a corresponding row of memory cells. When the memory is performed under the first operation mode by enabling all word lines of a memory bank, the current of each accessed memory cell increases by a couple of times and thus increases the endurance of the memory. For example, in FIG. 4, when the word lines WL₁ to WL₄ are enabled simultaneously, the input currents C₁ to C₄ corresponding to the floating gate FG1 ₁ to FG4 ₁ of the memory cells coupled to the first bit line BL₁ are jointly used for accessing data. As a result, the total current of the memory cells coupled to the first bit line BL₁ becomes the summation of C₁ to C₄ and thus yields to high endurance of the memory. In the present application, the word lines in a memory bank can be controlled by a decoder for performing the first operation mode and the second operation mode of the memory. The embodiments and the detail illustrations of the decoders used to control the memory are described below.

Please refer to FIG. 5. FIG. 5 is a logic circuit for the decoder 250 of the first embodiment in the present invention. The decoder 250 includes an inverter I₁, a first NAND gate N₁, and a second NAND gate N₂. The inverter I₁ includes an input terminal for receiving an optional signal O₁, and an output terminal. The first NAND gate N₁ includes a first input terminal for receiving a decoded address signal DA₁, a second input terminal coupled to the output terminal of the inverter I₁, and an output terminal coupled to a first word line WL₁. The second NAND gate N₂ includes a first input terminal coupled to the output terminal of the first NAND gate N₁, a second input terminal coupled to the output terminal of the inverter I₁, and an output terminal coupled to a second word line WL₂. In this embodiment, for presentation simplicity, we use the Boolean algebra expressions to present all signals (i.e., all signals are modeled by the integers “0” and “1”, where “0” denotes the signal bearing low voltage and “1” denotes the signal bearing high voltage). In the decoder 250, when the optional signal O₁ is “1”, through the inverter I₁, the second input terminal of the first NAND gate N₁ receives the signal “0” and thus the output terminal of the first NAND gate N₁ always outputs the signal “1” (i.e., in a NAND gate, when one of the input terminal receives the signal “0”, the output terminal always outputs the signal “1”). Similarly, the second input terminal of the second NAND gate N₂ receives the signal “0” and thus the output terminal of the second NAND gate N₂ always outputs the signal “1”. As a result, both the first word line WL₁ and the second word line WL₂ receive the signal “1” and are enabled simultaneously. That implements the first operation mode of the decoder 250.

When the optional signal O₁ is “0”, through the inverter I₁, the second input terminal of the first NAND gate N₁ receives the signal “1” and the second input terminal of the second NAND gate N₂ receives the signal “1”. In the embodiment, the optional signal O₁ being “0” is the necessary condition to perform the second operation mode of the decoder 250. In the following, the word lines are enabled line by line according to two steps, as described below.

In the first step, when the decoded address signal DA₁ is “0”, the output terminal of the first NAND gate N₁ outputs the signal “1” so that the output terminal of the second NAND gate N₂ outputs the signal “0”. As a result, the first word line WL₁ receives the signal “1” and is enabled. The second word line WL₂ receives the signal “0” and is disabled.

In the second step, when the decoded address signal DA₁ is “1”, the output terminal of the first NAND gate N₁ outputs the signal “0” so that the output terminal of the second NAND gate N₂ outputs the signal “1”. As a result, the first word line WL₁ receives the signal “0” and is disabled. The second word line WL₂ receives the signal “1” and is enabled.

In this embodiment, when the decoder 250 performs the first operation mode, both the first word line WL₁ and the second word line WL₂ are enabled with the optional signal O₁ being “1”. When the decoder 250 performs the second operation mode, one of the first word line WL₁ and the second word line WL₂ is enabled in each step according to the decoded addressed signal DA₁, with the optional signal O₁ being “0.

Please refer to FIG. 6. FIG. 6 is a logic circuit for the decoder 260 of the second embodiment in the present invention. The decoder 260 includes a first inverter I₁, a second inverter I₂, a third inverter I₃, a fourth inverter I₄, a fifth inverter I₅, a first NAND gate N₁, a second NAND gate N₂, a third NAND gate N₃, a fourth NAND gate N₄, a fifth NAND gate N₅, a sixth NAND gate N₆, a seventh NAND gate N₇, and an eighth NAND gate N₈. The first inverter I₁ includes an input terminal for receiving an optional signal O₁, and an output terminal. The first NAND gate N₁ includes a first input terminal for receiving a first decoded address signal DA₁, a second input terminal coupled to the output terminal of the first inverter I₁, and an output terminal. The second NAND gate N₂ includes a first input terminal for receiving a second decoded address signal DA₂, a second input terminal coupled to the output terminal of the first inverter I₁, and an output terminal. The third NAND gate N₃ includes a first input terminal coupled to the output terminal of the first NAND gate N₁, a second input terminal coupled to the output terminal of the first inverter I₁, and an output terminal. The fourth NAND gate N₄ includes a first input terminal coupled to the output terminal of the second NAND gate N₂, a second input terminal coupled to the output terminal of the first inverter I₁, and an output terminal. The fifth NAND gate N₅ includes a first input terminal coupled to the output terminal of the third NAND gate N₃, a second input terminal coupled to the output terminal of the fourth NAND gate N₄, and an output terminal. The sixth NAND gate N₆ includes a first input terminal coupled to the output terminal of the first NAND gate N₁, a second input terminal coupled to the output terminal of the fourth NAND gate N₄, and an output terminal. The seventh NAND gate N₇ includes a first input terminal coupled to the output terminal of the third NAND gate N₃, a second input terminal coupled to the output terminal of the second NAND gate N₂, and an output terminal. The eighth NAND gate N₈ includes a first input terminal coupled to the output terminal of the first NAND gate N₁, a second input terminal coupled to the output terminal of the second NAND gate N₂, and an output terminal. The second inverter I₂ includes an input terminal coupled to the output terminal of the fifth NAND gate N₅, and an output terminal coupled to a first word line WL₁. The third inverter I₃ includes an input terminal coupled to the output terminal of the sixth NAND gate N₆, and an output terminal coupled to a second word line WL₂. The fourth inverter I₄ includes an input terminal coupled to the output terminal of the seventh NAND gate N₇, and an output terminal coupled to a third word line WL₃. The fifth inverter I₅ includes an input terminal coupled to the output terminal of the eighth NAND gate N₈, and an output terminal coupled to a fourth word line WL₄.

In this embodiment, we also use the Boolean algebra expressions to present all signals for presentation simplicity. In decoder 260, when the optional signal O₁ is “1”, through the first inverter I₁, the second input terminal of the first NAND gate N₁ receives the signal “0” and thus the output terminal of the first NAND gate N₁ always outputs the signal “1” (i.e., as mentioned above, the output terminal of the NAND gate always outputs the signal “1” when one of the input terminal receives the signal “0”). Similarly, the second input terminal of the second NAND gate N₂ receives the signal “0” and thus the output terminal of the second NAND gate N₂ always outputs the signal “1”. The first input terminal of the third NAND gate N₃ receives the signal “1” and second input terminal of the third NAND gate N₃ receives the signal “0” so that the output terminal of the third NAND gate N₃ outputs the signal “1”. Similarly, the first input terminal of the fourth NAND gate N₄ receives the signal “1” and second input terminal of the fourth NAND gate N₄ receives the signal “0” so that the output terminal of the fourth NAND gate N₄ outputs the signal “1”. As a result, both the first input terminal and the second terminal of the fifth NAND gate N₅, the sixth NAND gate N₆, the seventh NAND gate N₇, and the eighth NAND gate N₈ receive the signal “1” so that the output terminals of these NAND gates N₅ to N₈ output the signal “0”. Since the output signals from the fifth NAND gate N₅, the sixth NAND gate N₆, the seventh NAND gate N₇, and the eighth NAND gate N₈ are respectively processed through the second inverter I₂, the third inverter I₃, the fourth inverter I₄, and the fifth inverter I₅, the output terminals of the inverters I₂ to I₅ output the signals “1”. As a result, the first word line WL₁, the second word line WL₂, the third word line WL₃, and the fourth word line WL₄ are enabled simultaneously. That implements the first operation mode.

When the optional signal O₁ is “0”, through the first inverter I₁, the second input terminal of the first NAND gate N₁ receives the signal “1”, the second input terminal of the second NAND gate N₂ receives the signal “1”, the second input terminal of the third NAND gate N₃ receives the signal “1”, and the second input terminal of the fourth NAND gate N₄ receives the signal “1”. In the embodiment, the optional signal O₁ being “0” is the necessary condition to perform the second operation mode of the decoder 260. In the following, the word lines are enabled line-by-line according to four steps, as described below.

In the first step, when the first decoded address signal DA₁ is “0” and the second decoded address signal DA₂ signal is “0”, the output terminal of the first NAND gate N₁ outputs the signal “1” and the output terminal of the second NAND gate N₂ outputs the signal “1” so that the output terminal of the third NAND gate N₃ outputs the signal “0” and the output terminal of the fourth NAND gate N₄ outputs the signal “0”. Thus, the first input terminal of the fifth NAND gate N₅ receives the signal “0” and the second input terminal of the fifth NAND gate N₅ receives the signal “0”. The first input terminal of the sixth NAND gate N₆ receives the signal “1” and the second input terminal of the sixth NAND gate N₆ receives the signal “0”. The first input terminal of the seventh NAND gate N₇ receives the signal “0” and the second input terminal of the seventh NAND gate N₇ receives the signal “1”. The first input terminal of the eighth NAND gate N₈ receives the signal “1” and the second input terminal of the eighth NAND gate N₈ receives the signal “1”. Thus, the output terminals of the fifth NAND gate N₅, the sixth NAND gate N₆, and the seventh NAND gate N₇ output the signals “1” and the output terminal of the eighth NAND gate N₈ outputs the signal “0”. Since the output signals from the fifth NAND gate N₅, the sixth NAND gate N₆, the seventh NAND gate N₇, and the eighth NAND gate N₈ are respectively processed through the second inverter I₂, the third inverter I₃, the fourth inverter I₄, and the fifth inverter I₅, the output terminals of the inverters I₂ to I₄ output the signals “0” and the output terminal of the inverter I₅ outputs the signal “1”. As a result, the first word line WL₁, the second word line WL₂, the third word line WL₃ are disabled and the fourth word line WL₄ is enabled.

In the second step, when the first decoded address signal DA₁ is “0” and the second decoded address signal DA₂ is “1”, the output terminal of the first NAND gate N₁ outputs the signal “1” and the output terminal of the second NAND gate N₂ outputs the signal “0” so that the output terminal of the third NAND gate N₃ outputs the signal “0” and the output terminal of the fourth NAND gate N₄ outputs the signal “1”. Thus, the first input terminal of the fifth NAND gate N₅ receives the signal “0” and the second input terminal of the fifth NAND gate N₅ receives the signal “1”. The first input terminal of the sixth NAND gate N₆ receives the signal “1” and the second input terminal of the sixth NAND gate N₆ receives the signal “1”. The first input terminal of the seventh NAND gate N₇ receives the signal “0” and the second input terminal of the seventh NAND gate N₇ receives the signal “0”. The first input terminal of the eighth NAND gate N₈ receives the signal “1” and the second input terminal of the eighth NAND gate N₈ receives the signal “0”. Thus, the output terminals of the fifth NAND gate N₅, the seventh NAND gate N₇, and the eighth NAND gate N₈ output the signals “1” and the output terminal of the sixth NAND gate N₆ outputs the signal “0”. Since the output signals from the fifth NAND gate N₅, the sixth NAND gate N₆, the seventh NAND gate N₇, and the eighth NAND gate N₈ are respectively processed through the second inverter I₂, the third inverter I₃, the fourth inverter I₄, and the fifth inverter I₅, the output terminals of the second inverter I₂, the fourth inverter I₄, and the fifth inverter I₅ output the signals “0” and the output terminal of the third inverter I₃ outputs the signal “1”. As a result, the first word line WL₁, the third word line WL₃, and the fourth word line WL₄ are disabled and the second word line WL₂ is enabled.

In the third step, when the first decoded address signal DA₁ is “1” and the second decoded address signal DA₂ is “0”, the output terminal of the first NAND gate N₁ outputs the signal “0” and the output terminal of the second NAND gate N₂ outputs the signal “1” so that the output terminal of the third NAND gate N₃ outputs the signal “1” and the output terminal of the fourth NAND gate N₄ outputs the signal “0”. Thus, the first input terminal of the fifth NAND gate N₅ receives the signal “1” and the second input terminal of the fifth NAND gate N₅ receives the signal “0”. The first input terminal of the sixth NAND gate N₆ receives the signal “0” and the second input terminal of the sixth NAND gate N₆ receives the signal “0”. The first input terminal of the seventh NAND gate N₇ receives the signal “1” and the second input terminal of the seventh NAND gate N₇ receives the signal “1”. The first input terminal of the eighth NAND gate N₈ receives the signal “0” and the second input terminal of the eighth NAND gate N₈ receives the signal “1”. Thus, the output terminals of the fifth NAND gate N₅, the sixth NAND gate N₆, and the eighth NAND gate N₈ output the signals “1” and the output terminal of the seventh NAND gate N₇ outputs the signal “0”. Since the output signals from the fifth NAND gate N₅, the sixth NAND gate N₆, the seventh NAND gate N₇, and the eighth NAND gate N₈ are respectively processed through the second inverter I₂, the third inverter I₃, the fourth inverter I₄, and the fifth inverter I₅, the output terminals of the second inverter I₂, the third inverter I₃, and the fifth inverter I₅ output the signals “0” and the output terminal of the fourth inverter I₄ outputs the signal “1”. As a result, the first word line WL₁, the second word line WL₂, and the fourth word line WL₄ are disabled and the third word line WL₃ is enabled.

In the fourth step, when the first decoded address signal DA₁ is “1” and the second decoded address signal DA₂ is “1”, the output terminal of the first NAND gate N₁ outputs the signal “0” and the output terminal of the second NAND gate N₂ outputs the signal “0” so that the output terminal of the third NAND gate N₃ outputs the signal “1” and the output terminal of the fourth NAND gate N₄ outputs the signal “1”. Thus, the first input terminal of the fifth NAND gate N₅ receives the signal “1” and the second input terminal of the fifth NAND gate N₅ receives the signal “1”. The first input terminal of the sixth NAND gate N₆ receives the signal “0” and the second input terminal of the sixth NAND gate N₆ receives the signal “1”. The first input terminal of the seventh NAND gate N₇ receives the signal “1” and the second input terminal of the seventh NAND gate N₇ receives the signal “0”. The first input terminal of the eighth NAND gate N₈ receives the signal “0” and the second input terminal of the eighth NAND gate N₈ receives the signal “0”. Thus, the output terminals of the sixth NAND gate N₆, the seventh NAND gate N₇, and the eighth NAND gate N₈ output the signals “1” and the output terminal of the fifth NAND gate N₅ outputs the signal “0”. Since the output signals from the fifth NAND gate N₅, the sixth NAND gate N₆, the seventh NAND gate N₇, and the eighth NAND gate N₈ are respectively processed through the second inverter I₂, the third inverter I₃, the fourth inverter I₄, and the fifth inverter I₅, the output terminals of the third inverter I₃, the fourth inverter I₄, and the fifth inverter I₅ output the signals “0” and the output terminal of the second inverter I₂ outputs the signal “1”. As a result, the second word line WL₂, the third word line WL₃, and the fourth word line WL₄ are disabled and the first word line WL₁ is enabled.

In this embodiment, when the decoder 260 performs the first operation mode, all the word lines WL₁ to WL₄ are enabled with the optional signal O₁ being “1”. When the decoder 260 performs the second operation mode, one of the word lines WL₁ to WL₄ is enabled in each step according to the decoded addressed signals DA₁ and DA₂, with the optional signal O₁ being “0”.

As shown in the embodiments of FIG. 5 and FIG. 6, the first operation mode of decoder 250, 260 is performed when the optional signal O₁ has a predetermined logic value (i.e., in the embodiments, the predetermined logic value is equal to 1) and the second operation mode of decoder 250, 260 is performed when the optional signal O₁ has another predetermined logic value (i.e., in the embodiments, the another predetermined logic value is equal to 0).

Referring to FIG. 3 to FIG. 6, since each decoder controls the plurality of rows of memory cell in each memory bank, by choosing appropriate operation mode of the decoder in each memory bank, the memory can provide an adaptive performance of endurance and capacity. For example, since the memory using the first operation mode for accessing data provides larger input current, larger operation window, higher endurance, and smaller capacity than using the second operation mode for accessing data (i.e., larger input current can mitigate the voltage offset with the use of time and thus can enlarge the operation window and improve the endurance of memory), when some memory banks use the first operation mode and the rest memory banks use the second operation mode for accessing data, the memory provides the satisfactory endurance with high capacity.

Please refer to FIG. 7. FIG. 7 depicts the current distribution of the non-volatile memory according to an embodiment of the present invention in one operation instance. The Y-axis (vertical axis) denotes the number of memory cell and the X-axis (horizontal axis) denotes the un-normalized current intensity of memory cell. Here, the memory contains some memory banks under the first operation mode and some memory banks under the second operation mode. This implies that the memory has two current distributions corresponding to two operation modes. The coexistent two current distributions are shown in FIG. 7. In FIG. 7, the first current distribution corresponding to the first operation mode is presented as a line with circular markers. The second current distribution corresponding to the second operation mode is presented as a line with triangular markers. Specifically, each current distribution has two peak regions. Each peak region locates the local maximum of the distribution curve. The first peak region P1 denotes the number of memory cell used for accessing the low voltage data under the first operation mode. The second peak region P2 denotes the number of memory cell used for accessing the high voltage data under the first operation mode. The third peak region P3 denotes the number of memory cell used for accessing the low voltage data under the second operation mode. The fourth peak region P4 denotes the number of memory cell used for accessing the high voltage data under the second operation mode. The difference of the current of the memory cell under the first operation mode between a value within the first peak region P1 (i.e., within the current intensity interval 1 to 6 in X-axis) and a value within the second peak region P2 (i.e., within the current intensity interval 26 to 31 in X-axis) is defined as the first operation window. The difference of the current of the memory cell under the second operation mode between a value within the third peak region P3 (i.e., within the current intensity interval 1 to 6 in X-axis) and a value within the fourth peak region P4 (i.e., within the current intensity interval 56 to 61 in X-axis) is defined as the second operation window.

Particularly, in FIG. 7, when the first operation mode is performed in some memory banks by enabling the memory cells row by row, the memory cells in these memory banks provide high capacity with basic endurance since the first operation window has a narrow width. When the second operation mode is performed in some memory banks by enabling all the memory cells simultaneously, the memory cells in these memory banks provide low capacity with high endurance since the second operation window has a wide width. Because the memory coexists the first operation mode with respect to the first operation window and the second operation mode with respect to the second operation window for accessing data, the satisfactory endurance in conjunction with high capacity can be provided by the memory.

In the present invention, a multi-cells selection method is used in non-volatile memory to enlarge the operation window and improve the endurance. The key idea is to control the plurality of word lines in each memory bank by a decoder. Two operation modes for controlling word lines are further introduced. Specifically, the operation modes in each memory bank can be appropriately adjusted so that the memory can be used for the applications with different endurance and capacity requirements.

Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims. 

What is claimed is:
 1. A non-volatile memory comprising: a plurality of rows of memory cells; a plurality of bit lines coupled to the plurality of rows of memory cells configured to access data to the plurality of rows of memory cells; a plurality of word lines each coupled to a corresponding row of memory cells; and a decoder coupled to the plurality of word lines configured to enable at least one row of memory cells of the plurality of rows of memory cells.
 2. The non-volatile memory of claim 1 wherein the decoder comprises: an inverter, comprising: an input terminal configured to receive an optional signal; and an output terminal; a first NAND gate, comprising: a first input terminal configured to receive a decoded address signal; a second input terminal coupled to the output terminal of the inverter; and an output terminal coupled to a first word line of the plurality of word lines; and a second NAND gate, comprising: a first input terminal coupled to the output terminal of the first NAND gate; a second input terminal coupled to the output terminal of the inverter; and an output terminal coupled to a second word line of the plurality of word lines.
 3. The non-volatile memory of claim 1 wherein the decoder comprises: a first inverter, comprising: an input terminal configured to receive an optional signal; and an output terminal; a first NAND gate, comprising: a first input terminal configured to receive a first decoded address signal; a second input terminal coupled to the output terminal of the first inverter; and an output terminal; a second NAND gate, comprising: a first input terminal configured to receive a second decoded address signal; a second input terminal coupled to the output terminal of the first inverter; and an output terminal; a third NAND gate, comprising: a first input terminal coupled to the output terminal of the first NAND gate; a second input terminal coupled to the output terminal of the first inverter; and an output terminal; a fourth NAND gate, comprising: a first input terminal coupled to the output terminal of the second NAND gate; a second input terminal coupled to the output terminal of the first inverter; and an output terminal; a fifth NAND gate, comprising: a first input terminal coupled to the output terminal of the third NAND gate; a second input terminal coupled to the output terminal of the fourth NAND gate; and an output terminal; a sixth NAND gate, comprising: a first input terminal coupled to the output terminal of the first NAND gate; a second input terminal coupled to the output terminal of the fourth NAND gate; and an output terminal; a seventh NAND gate, comprising: a first input terminal coupled to the output terminal of the third NAND gate; a second input terminal coupled to the output terminal of the second NAND gate; and an output terminal; an eighth NAND gate, comprising: a first input terminal coupled to the output terminal of the first NAND gate; a second input terminal coupled to the output terminal of the second NAND gate; and an output terminal; a second inverter, comprising: an input terminal coupled to the output terminal of the fifth NAND gate; and an output terminal coupled to a first word line of the plurality of word lines; a third inverter, comprising: an input terminal coupled to the output terminal of the sixth NAND gate; and an output terminal coupled to a second word line of the plurality of word lines; a fourth inverter, comprising: an input terminal coupled to the output terminal of the seventh NAND gate; and an output terminal coupled to a third word line of the plurality of word lines; and a fifth inverter, comprising: an input terminal coupled to the output terminal of the eighth NAND gate; and an output terminal coupled to a fourth word line of the plurality of word lines.
 4. A method for controlling a non-volatile memory, the non-volatile memory comprises a plurality of rows of memory cells, a plurality of bit lines coupled to the plurality of rows of memory cells, and a plurality of word lines each coupled to a corresponding row of memory cells, the method comprising: enabling a first word line of the plurality of word lines according to an optional signal and at least one decoded address signal; and accessing data to a row of memory cells coupled to the first word line through the bit lines while the first word line is enabled.
 5. The method of claim 4 wherein: enabling the first word line of the plurality of word lines according to the optional signal and at least one decoded address signal is enabling the first word line of two word lines according to the optional signal and the decoded address signal.
 6. The method of claim 5 further comprising: enabling a second word line of the two word lines according to the optional signal and the decoded address signal; and accessing data to a row of memory cells coupled to the second word line through the bit lines while the second word line is enabled.
 7. The method of claim 5 further comprising: enabling the two word lines when the optional signal has a predetermined logic value; and accessing data to two rows of memory cells coupled to the two word lines through the bit lines while the two word lines are enabled.
 8. The method of claim 4 wherein: enabling the first word line of the plurality of word lines according to the optional signal and at least one decoded address signal is enabling the first word line of four word lines according to the optional signal and the two decoded address signals.
 9. The method of claim 8 further comprising: enabling a second word line of the four word lines according to the optional signal and the two decoded address signals; and accessing data to a row of memory cells coupled to the second word line through the bit lines while the second word line is enabled.
 10. The method of claim 8 further comprising: enabling the four word lines when the optional signal has a predetermined logic value; and accessing data to four rows of memory cells coupled to the four word lines through the bit lines while the four word lines are enabled.
 11. A method for controlling a non-volatile memory, the non-volatile memory comprises a plurality of rows of memory cells, a plurality of bit lines coupled to the plurality of rows of memory cells, and a plurality of word lines each coupled to a corresponding row of memory cells of the plurality of rows of memory cells, the method comprising: enabling the plurality of word lines when an optional signal has a predetermined logic value; and accessing data to the plurality of rows of memory cells coupled to the plurality of word lines through the bit lines while the plurality of word lines are enabled.
 12. The method of claim 11 wherein the plurality of rows of memory cells is m rows of memory cells where m is an integer greater than
 1. 13. The method of claim 11 wherein the plurality of rows of memory cells is 2^(n) rows of memory cells where n is a positive integer. 